package cn.csc.module.pay.controller.app.mqrecord.vo;

import lombok.*;
import java.util.*;
import io.swagger.annotations.*;
import cn.csc.framework.common.pojo.PageParam;
import org.springframework.format.annotation.DateTimeFormat;

import static cn.csc.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;

@ApiModel("用户 APP - mq消息消费流水分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class AppPayMqRecordPageReqVO extends PageParam {

    @ApiModelProperty(value = "业务场景，1:冻结充值 2:撤销充值 3:分账")
    private String busiType;

    @ApiModelProperty(value = "支付订单ID")
    private Long orderId;

    @ApiModelProperty(value = "见证宝订单ID")
    private Long jzbOrderId;

    @ApiModelProperty(value = "消息主题或者channel")
    private String channel;

    @ApiModelProperty(value = "消息内容")
    private String message;

    @ApiModelProperty(value = "投递状态，0: 未投递 1:已投递 2:未知")
    private String deliverStatus;

    @ApiModelProperty(value = "投递次数")
    private Integer deliverNum;

    @ApiModelProperty(value = "消费状态，0: 未消费 1:已消费 2:未知")
    private String consumeStatus;

    @ApiModelProperty(value = "创建时间(订单生成时间)")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private Date[] createTime;

}
